1. Field of the Invention
The present invention relates generally to a method and system for operating a content management system.
2. Description of the Related Art
Content management systems have been used primarily as repositories for storing vast amounts of data. In general, these content management systems (CMS) are designed by engineers who are not day-to-day operators on a content management system. While these content management systems provide comprehensive technical infrastructures, they fail to provide operators of the systems with simple and intuitive solutions for using the systems to achieve particular tasks. The content management systems currently available provide an open architecture, which allows the system engineer for the content management system to then design and develop a customized system for a particular application or workflow. Allowing the system to be so flexible is actually a problem for most system engineers and operators of the system because the open architecture requires that the operators, such as human editors, be proficient, if not experts, in the design and operation of the content management system. This further forces the system engineer to spend much time and money in developing a customized system for a specific application. In other words, the content management systems are not out-of-the-box ready to operate for a given task.
To design and customize a content management system, the system engineer must know the HTML programming language, or the specific programming language for the particular content management system being used. Additionally, when designing these systems, depending upon the particular system configuration, the system engineer must create bridges, which are hardware and/or software systems that convert machine hardware and software specific data to a different machine hardware and software specific data, when the content management system is connected in a network environment. Additionally, the system engineer must also create an interface link, which is often times a script program, to allow a user interface to interact with the content management system.
The content management system includes a database for storing data received by the content management system. A problem with content management systems in the past has been that database storage is limited in size for various stability reasons and is not easily scalable. Another problem that exists is that the databases are not xe2x80x9cfarmablexe2x80x9d. A farmable database is a single database that is extended by having the database physically located on more than one storage device. By farming the database, the amount of data that can be stored in the database is virtually limitless.
One of the subtle, yet integral problems for content management systems, is the workflow that the system is designed to follow. Workflow refers to a certain methodology and procedure implemented by an organization to perform a certain task. For example, a news publishing organization utilizes a certain workflow in publishing its new stories or data that covers the process from the time that a story is written to the time it is published.
The physical process of publishing news stories is not the complete task as envisioned by quality news organizations and certainly not the purpose for using a content management system. By physical process, it is meant that the data is physically copied and pasted from one file into another, which is published and distributed to, for instance, a web page. Quality news organizations require proper editorial workflow and data management, which includes review, edit, layout, and delivery of the data. While the physical process is necessary, the actual steps to implement the physical process have, in the past, been cumbersome and time consuming by requiring extra unnecessary steps for the human (web) editor.
While the physical process may be a necessary step, an intellectual process is also required. This intellectual process is the idea of fitting a particular workflow paradigm into the reality of publishing, for example, a news story from a traditional media format to an online environment. This intellectual process is very difficult to generate from the present content management systems available. Additionally, the web editor is required to know the HTML programming language or a specific programming language for the content management system being used, which is often more than a web editor needs or wants to know. Workflow, as required to be performed to streamline a news publishing organization, for example, is thus impeded by content management system overhead.
Editorial workflow is a very important concept for understanding the operation of a content management system. The usefulness of the content management system in, for instance, a news organization is only as good as its seamlessness with the editorial workflow. Editorial workflow means to provide news stories and other associated data in a certain fashion such that the stories and data are properly edited and posted in a publication (for a traditional news source) and on a web page (for an electronic or online news source).
A content management system used for publishing news stories on, for example, the worldwide web or internet, must first receive data from a news organization and then allow web editors to review and accept or approve the data to be published. This publishing operation is not simply a matter of receiving the data electronically and placing the data onto a web page, but requires that the web editor review, edit, assign, and approve the data so that the data can be exported to assigned target locations, most typically web pages.
In general, the available content management systems are simply set up as repositories for data with limited publishing capabilities with complimentary web serving capabilities. Because of the rudimentary environment and capabilities of currently available content management systems, web editors are basically limited to reviewing the data in the database, copying the data into a content management system, and placing the data in a flat file system, such as a particular web page.
A user interface provides the web editor with the capability to edit the data stored in the database on the content management system. Because content management systems in the past were designed by engineers (i.e., not necessarily those who would eventually be operators of the system), the user interface was tailored more as a high level file management system as opposed to an efficient tool for handling the data. The currently available user interfaces do not provide sufficient information to assign the data by simply looking at the information provided on the front end of the user interface. Because insufficient information is readily available, multiple operations are required to be performed by the web editor to determine target location(s) for the data to be assigned. Because the content management systems have limited xe2x80x9cfront endxe2x80x9d interfaces, the web editor is also required to physically move files within the user interface much the same way one would move files within a file structure in a graphical operating system.
In addition to the above discussed shortcomings of the past content management systems, no source indicators indicate where the file was originated. Even more troublesome to web editors is that all the data within a specific data record (e.g., a single news story) is contained in a text field so that a web editor is required to sift through various computer codes containing header information within a text editor in order to determine important information, such as author, headline, and date published.
While there are content management systems to serve very large systems, these content management systems are specifically designed to serve web pages. In other words, these content management systems are tailored to creating web pages and not necessarily serving the data that is to be posted on the web page. These systems may serve a web site with potentially three hundred or more web pages.
To summarize the problems of currently available content management systems one must recognize that these systems are difficult to use, inefficient, unstable and expensive. The difficulty for using the currently available content management systems is that these systems require the system engineer to develop and tailor his or her own system using a specific programming language, such as JAVA or HTML. The system engineer must also design and develop interfaces to the server supplying the data to the content management system and to the server or computers that have the user interfaces interacting with the content management system. Additionally, the web editors are required to understand the particular programming language that is used to manage and store the data. Working with the currently available content management systems also is inefficient in that they require several steps to perform what preferably should be a single step operation. There are many other time intensive operations in currently available content management systems that make it difficult and frustrating for the web editor to do his or her everyday tasks.
Content management systems are expensive to buy, maintain, and operate. Currently available systems, again, require that the system engineer develop and design a system appropriate for the needs of the operator of that system. Because the working environment on currently available systems is so inefficient, operating costs for the operator are quite substantial. Maintaining presently available content management systems is also a formidable task as these systems have stability problems due to the techniques used for handling and storing the data.
The present invention is directed to a content management system for receiving, editing, and distributing data across a network. The content management system is designed in a preferred embodiment to handle a certain workflow within an online publishing environment, which allows operators of the content management system to more efficiently perform routine publishing tasks.
A first embodiment of the invention is a method for preparing data to be distributed on a network maintained by a content management system. The method includes accessing the data stored in a database, presenting the data for inspection, and assigning the data to at least one target location for distribution.
A second embodiment of the present invention is a system for operating a content management system that has a first computing device having a processor and a storage device for storing a database. A second computing device is connected to the first computing device and at least one of the first and second computing devices performs the steps of accessing the data stored in the database, presenting the data for inspection, and assigning the data to at least one target location for distribution.
Another embodiment of the present invention is a user interface operating on a computing device for editing data within a database in the content management system. The user interface includes a connection to the database so that the data may be accessed. This embodiment also includes a graphical user interface having at least two regions displaying the data in a format which allows an operator of the user interface to inspect the data in the database. A selecting means is available for choosing at least one data record in the first region. A second region displays the contents of the data record that was selected from the first region.
Another embodiment of the present invention includes a content management system for collecting, editing and distributing data in a database having a certain configuration. A first computing device operates as a server and is connected to a second computing device. The first computing device further operates at least one database to store the data to be accessed by the second computing device. The content management system has a feature to access the database so that data may be assigned to at least one target location for the data to be exported to at least one third computing device. The first computing device further has an exporting feature to transmit the data to the assigned target location(s).